package com.ruoyi.exam.domain.vo;

import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.util.List;
import java.util.Map;

/**
 * @author Bandit
 * @createTime 2022/11/02 9:32:24
 */
public class QuestionVo extends BaseEntity {

    public static class Option {
        String key;
        String value;

        public String getKey() {
            return key;
        }

        public void setKey(String key) {
            this.key = key;
        }

        public String getValue() {
            return value;
        }

        public void setValue(String value) {
            this.value = value;
        }
    }

    private static final long serialVersionUID = 1L;

    /** 题目id */
    private Long id;

    /** 类型1.单选 2.多选 3.判断 4.填空 5.简答 */
    @Excel(name = "类型1.单选 2.多选 3.判断 4.填空 5.简答")
    private Long questionType;

    /** 题目分值 */
    @Excel(name = "题目分值")
    private Long score;

    /** 正确答案 */
    @Excel(name = "正确答案")
    private String correct;

    /**
     * 前端正确答案数组
     */
    private List<String> correctArrays;

    /** 题目 填空、 题干、解析、答案等信息 */
    private List<Option> content;

    /**
     * 内容String, 用来接收数据库的content
     */
    private String contentString;

    /** 题目 填空、 题干、解析、答案等信息的id */
    @Excel(name = "题目 填空、 题干、解析、答案等信息的id")
    private Long contentId;

    /** 创建人id */
    @Excel(name = "创建人id")
    private Long createdBy;

    /** 状态1正常,0禁用 */
    @Excel(name = "状态1正常,0禁用")
    private Long status;

    /** 删除标志 */
    @Excel(name = "删除标志")
    private Long deleteFlag;

    public Long getQuestionType() {
        return questionType;
    }

    public void setQuestionType(Long questionType) {
        this.questionType = questionType;
    }

    public Long getScore() {
        return score;
    }

    public void setScore(Long score) {
        this.score = score;
    }

    public String getCorrect() {
        return correct;
    }

    public void setCorrect(String correct) {
        this.correct = correct;
    }

    public List<Option> getContent() {
        return content;
    }

    public void setContent(List<Option> content) {
        this.content = content;
    }

    public Long getCreatedBy() {
        return createdBy;
    }

    public void setCreatedBy(Long createdBy) {
        this.createdBy = createdBy;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public List<String> getCorrectArrays() {
        return correctArrays;
    }

    public void setCorrectArrays(List<String> correctArrays) {
        this.correctArrays = correctArrays;
    }

    public Long getContentId() {
        return contentId;
    }

    public void setContentId(Long contentId) {
        this.contentId = contentId;
    }

    public Long getStatus() {
        return status;
    }

    public void setStatus(Long status) {
        this.status = status;
    }

    public Long getDeleteFlag() {
        return deleteFlag;
    }

    public void setDeleteFlag(Long deleteFlag) {
        this.deleteFlag = deleteFlag;
    }

    public String getContentString() {
        return contentString;
    }

    public void setContentString(String contentString) {
        this.contentString = contentString;
    }

    @Override
    public String toString() {
        return "QuestionVo{" +
                "questionType=" + questionType +
                ", score=" + score +
                ", correct='" + correct + '\'' +
                ", content='" + content + '\'' +
                ", createdBy=" + createdBy +
                '}';
    }
}
